<?php
/**
 * Created by PhpStorm.
 * User: 郑合达
 * Date: 2018/12/8
 * Time: 10:55
 */

namespace app\admin\controller;

use app\Model\ArticleCatModel;
class Articlecategory extends Common
{
    /***
     * @var int
     * 文章分类页面
     */
    private $page = 20;
    public function category_List()
    {
         $data['list'] = ArticleCatModel::field('*')
             ->order('sort_order')
             ->paginate($this->page);
        $this->getConAndAct('content');
        return view('index',$data);
    }
    /**
     * @return \think\response\Json
     * 根据article_id 更改显示状态
     */
    public function change(){
        $cat_id =input('cat_id');
        $show_in_nav =input('show_in_nav');
        $info  = ArticleCatModel::update([
            'show_in_nav' => $show_in_nav
        ], ['cat_id' => $cat_id]);
        if(!$info){
            return retJson('', 201, '修改失败');
        }
        return retJson('', 200, '修改成功');
    }
    /**
     * @return \think\response\Json
     * 删除文章分类
     */
    public function del(){
        $del = ArticleCatModel::destroy(input('id'));
        if(!$del){
            return retJson('', 201, '删除失败！');
        }
        return retJson('', 200, '删除成功！');
    }
    /**
     * @return \think\response\View
     * 新增文章分类页面
     */
    public function category_add(){
        return view('add');
    }
    /**
     * @return \think\response\Json
     * 新增文章分类
     */
    public function add(){
        //数据验证
        $this->veri('Articlecategory','add');
        $ret = ArticleCatModel::create([
            'cat_name'        => input('cat_name'),
            'show_in_nav'         => input('show_in_nav'),
            'sort_order'       =>  input('sort_order'),
            'cat_desc'      => input('cat_desc'),
            'keywords'          => input('keywords'),
            'cat_alias' =>input('cat_alias'),
        ]);
        if(!$ret){
            return retJson('', 201, '新增失败');
        }

        return retJson('', 200, '新增成功');
    }

    /**
     * @return \think\response\View
     * 跳转编辑页面，返回编辑参数
     */
    public function category_edit(){
        $data= ArticleCatModel::field('*')->where('cat_id',input('cat_id'))
            ->find();
        $this->assign('data',$data);
        return view('edit');
    }
    /**
     * @return \think\response\Json
     * 修改文章分类
     */
    public function edit(){
        //数据验证
        $this->veri('Articlecategory','edit');

        $data['cat_name']   = input('cat_name');
        $data['show_in_nav']   = input('show_in_nav');
        $data['sort_order']= input('sort_order');
        $data['cat_desc'] = input('cat_desc');
        $data['keywords']   = input('keywords');
        $data['cat_alias']   = input('cat_alias');
        // 文章分类信息修改
        $res = ArticleCatModel::update($data, ['cat_id' => input('cat_id')]);
        if(!$res){
            return retJson('', 201, '修改失败');
        }

        return retJson('', 200, '修改成功');
    }
}